home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1993 / Internet Info CD-ROM (Walnut Creek) (1993).iso / standards / VGA / chiptech.txt < prev    next >
Text File  |  1993-07-15  |  49KB  |  1,136 lines

  1.   Chips and Technologies Super VGA Chip Sets:
  2.  
  3.  
  4.     82c450
  5.     82c451  256k DRAM    max 800x600 16col
  6.     82c452    1M DRAM    max 640x480 256col, 1024x768 16col
  7.     82c453    1M VRAM    max 800x600 256 col
  8.     82c455  256k DRAM    Flat Panel version
  9.     82c456  256k DRAM    do
  10.     82c457               do. Full color. 
  11.     F65520   1M  D/VRAM  do. Full color. max 1280x1024 16 col & 800x600 256 col
  12.     F65530   1M  D/VRAM  do. Full color. max 1280x1024 16 col & 800x600 256 col
  13.              Supports Local Bus.    
  14.  
  15.  
  16.     94h (R/W):  Setup Control Register for Microchannel boards
  17.        bit 0-2  Reserved
  18.          3  Enables Adapter VGA if set
  19.          4  Enters Setup Mode if set
  20.        5-7  Reserved
  21.        Note: This is the same register as 46E8h.
  22.  
  23.        100h (R): Microchannel ID low
  24.        bit 0-7  Bit 0-7 of Microchannel Card ID
  25.  
  26.        101h (R): Microchannel ID high
  27.        bit 0-7  Bit 8-15 of Microchannel Card ID
  28.  
  29.  102h (R/W): Global Enable
  30.  bit   0  VGA is enabled if set.
  31.  
  32.  103h (R/W): Multiple Enable
  33.  bit 0-3  Multiple VGA Enable
  34.        4  Must be 0 for propper operation of 82c455/6/7.
  35.        6  Extension registers at 3B6h/7h if set,
  36.       3D6h/7h if not.
  37.        7  Extension Registers Access Enable.
  38.       VGA Extension registers at 3d7h can only be
  39.       accessed if this bit is set.
  40.  Note: This register only available in Setup Mode.  
  41.  
  42.  104h (R): Global ID (Setup)             (Only in Setup Mode)
  43.  bit 0-7  Chip I/D.  0A5h if Chips and Tech Chip set.
  44.  
  45.  3C3h (R/W): Setup Control PS/2
  46.  bit   0  Enables motherboard VGA if set
  47.        4  Enters Setup mode if set
  48.  
  49.  3d4h index 22h (R/W): CPU Data Latch or Color Compare from last read
  50.  
  51.  3d4h index 24h (R/W): Attribute Controller flip/flop
  52.  
  53.  3d6h index  0  (R): Chip Version
  54.  bit 0-3  Revision number
  55.      4-7  Chipcode:
  56.        0: 451  1:452  2:455  3:453  5:456  6:457
  57.        7: 65520, 8:65530
  58.  
  59.  3d6h index  1  (R): DIP Switch Register
  60.  bit 0-6  State of the DIP switches.
  61.      0-7  (655x0) Read from Memory Address bus A on Reset.
  62.       Bit 0-1: CPU Bus type    
  63.             0=PI bus, 1=MC bus, 2=Local bus (65530 only), 3=ISA bus.
  64.         2: Pixel Clock Source (OSC/)
  65.             0: CLK0-CLK3 are pixel clock inputs. 
  66.                CLK0 or CLK1 is MCLK input.
  67.             1: CLK0 is MCLK input.
  68.                CLK1 is pixel clock input.
  69.                CLK2 is CLKSEL0 output.
  70.                CLK3 is CLKSEL1 output.   
  71.         3: Memory Clock Source (56M/)
  72.              0: MCLK = 56.644 MHz (80ns RAM)
  73.             If bit 2 is 0:
  74.               CLK0 is 50.350 MHz
  75.               CLK1 is 56.644 MHz (MCLK source)
  76.               CLK2 is 40.000 MHz
  77.               CLK3 is 44.900 MHz
  78.             If bit 2 is 1:
  79.               MCLK (CLK0) is 56.644 MHz
  80.               Clock Select 0 is 40.000 MHz
  81.               Clock Select 1 is 50.350 MHz
  82.               Clock Select 2 is user defined
  83.               Clock Select 3 is 44.900 MHz
  84.              1: MCLK = 50.350 MHz (100ns RAM)
  85.             If bit 2 is 0:
  86.               CLK0 is 50.350 MHz
  87.               CLK1 is 28.322 MHz (MCLK source)
  88.               CLK2 is 40.000 MHz
  89.               CLK3 is 44.900 MHz
  90.             If bit 2 is 1:
  91.               MCLK (CLK0) is 50.350 MHz
  92.               Clock Select 0 is 40.000 MHz
  93.               Clock Select 1 is 28.322 MHz
  94.               Clock Select 2 is user defined
  95.               Clock Select 3 is 44.900 MHz
  96.         4: Transceiver Control
  97.            If set there are no external transceivers (pin 69 is
  98.            VGARD output), if clear there are external transceivers
  99.            (pin 69 is ENAVEE/ output).
  100.  
  101.  3d6h index  2  (R/W): CPU Interface
  102.  bit   0  16bit memory enabled if set
  103.        1  (82c451-453) 16 bit I/O if set
  104.       (82c453 Only) Fast Font Enable   ???
  105.          The byte written to memory is used as a mask
  106.          for painting foreground color to the pixels
  107.          with the corresponding bit set and background
  108.          color to the rest.
  109.       (655x0 Only) Digital Monitor Clock Mode
  110.          0: CLK0 = 25 MHz, CLK1 = 28 MHz
  111.          1: CLK0 = 14 MHz (56MHz /4 or 28MHz /2)
  112.         CLK1 = 16 MHz (50MHz /3)
  113.        2  (82c451/2/3/5) Fast MCA buscycle decoding if set
  114.      3-4  (82c453 and 455-457) Attribute port pairing
  115.          0: Normal Attribute addressing
  116.          1: 3C1h is both read and write, 8 and 16 bit.
  117.          2: 3C1h is both read and write, 8 bit only.
  118.        5  (Not 82c451/2) 10 bit I/O decoding if set, 16 bit else
  119.        6  (82c453 Only) Pel Panning Control
  120.       (655x0 Only) If set external palette registers can be addressed
  121.               at 83C6h-83C9h. (Brooktree/Sierra type DACs).
  122.        7  (Read Only) Attribute flip-flop status. If set the Attribute
  123.              register (3C0h) is currently in Data mode.
  124.  
  125.  3d6h index  3  (R/W): ROM Interface                              (not 655x0)
  126.  bit   0  Disable on-card ROM if set.
  127.       Enable ROM at C0000h-C7FFFh if clear.
  128.  
  129.  3d6h index  4  (R/W): Memory Mapping           
  130.  bit 0-1  (82c452/3) Display Memory Size:
  131.               0: 256Kb, 1: 512Kb, 2: 1Mb.
  132.       (655x0) Memory Configuration
  133.            0: 2 x 256Kx4 D/VRAM  256K tot   8 bit datapath
  134.            1: 4 x 256Kx4 D/VRAM  512K tot  16 bit datapath
  135.            3: 2 x 512Kx8   DRAM    1M tot  16 bit datapath
  136.        2  (82c451/5/6/7) Enable bank access if set
  137.       (82c452/3, 655x0) If set CRTC Address can cross bank boundaries.
  138.        3  (82c457) If set DRAM timing is for 64Kx16 (4 WE, 1 CAS)
  139.            if clear for 64Kx4 (4 CAS, 1 WE).
  140.       (655x0)  Enables bank addressing if set.
  141.        4  (655x0)  If set VRAM interface, else DRAM interface.
  142.        5  (655x0)  If set CPU memory write buffer is enabled.
  143.        6  (655x0)  If set enables 0WS capability.
  144.        7  (655x0)  If set allows faster 0WS cycle timing.
  145.   
  146.  3d6h index  5h (R/W): Sequencer Control                       (452/3/7 only)
  147.  bit   2  (82c457)  Clock Pin Polarity.
  148.             If set CLK0 is defined as a common clock and CLK1/S0
  149.             and CLK2/S1 are select outputs. If clear one of CLK0,
  150.             CLK1 and CLK2 is selected as the display clock.
  151.  
  152.  3d6h index  6h (R/W): DRAM Interface                           (82c452 only)
  153.  
  154.  3d6h index  6h (R/W): Palette Control Register                 (655x0 only)
  155.  bit   0  If set enables external DAC if 3d6h index 6 bit 0 is 0.
  156.        1  If set disables the internal DAC.
  157.       Causes the DAC to power down and tri-states the outputs. 
  158.        2  If set enables 16 bit/pixel operation.
  159.       Timing to an external DAC will be SC11486 (Tseng) compatible.
  160.       (Two bytes output per pixel, one on the rising edge of PCLK
  161.       and one on the falling edge).
  162.        3  If set 16 bit pixels are 5 red-6 green-5 blue.
  163.       If clear they are 5 bits of each.
  164.        4  If set the Sense Status bit (3C2h bit 4) is driven by the SENSE
  165.       pin from external logic.
  166.        5  If set bypasses the internal RAMDAC.
  167.       This bit should always be clear.
  168.      6-7  Color Reduction Select. 
  169.       In flat panel modes these bits determine the algorithm used to
  170.       reduce 18 bit color data to 6 bits for mono panels.
  171.        0: NTSC weighting, 1: Equivalent weight, 2: Green only, 3: Color.
  172.  
  173.  3d6h index  8h (R/W): General Purpose Output Select B Register. (451/2/5/6/7 only)
  174.  bit   0  Select bit B for ERMIN/ pin.
  175.        1  Select bit B for TRAP/ pin.
  176.        2  (82c457) If set PNL14 pin outputs panel data bit 14,
  177.       if clear PNL14 pin outputs DATEN/.   
  178.  
  179.  3d6h index  9h (R/W): General Purpose Output Select A Register. (451/2/5/6/7 only)
  180.  bit   0  Select bit A for ERMIN/ pin.
  181.        1  Select bit A for TRAP/ pin.
  182.       Select A and B determine the output on the pin:
  183.         B      A        Output
  184.       clear  clear      Normal
  185.       clear   set       3-State
  186.        set   clear      Force low
  187.        set    set       Force high 
  188.  
  189.  3d6h index  Ah (R/W): Cursor Address Top                     (82c452/3 Only)
  190.  bit 0-1  Cursor Address bit 16,17
  191.      2-7  Reserved
  192.  
  193.  3d6h index  Bh (R/W): CPU Paging                         (82c451/5/6/7 only)
  194.  bit 0-1  Bank number in 64k chunks.
  195.  Note: This Bank register is used if in a 256 color mode and
  196.        the chip is a 82c451/5/6/7.
  197.  
  198.  3d6h index  Bh (R/W): Memory Paging Register          (82c452/3, 655x0 only)
  199.  bit   0  Enable extended paging (256 color paging) if set
  200.        1  If set Dual Pages are enabled. A0000h-A7FFFh uses 3d6h 
  201.       index 10h, A8000h-AFFFFh uses 3d6h index 11h.
  202.        2  CPU Address divide by 4 (256 color addressing)
  203.        3  (655x0) If set CPU address divide by 2 is enabled.
  204.        4  (65530) If set Memory is mapped as 1MB linear Memory.
  205.  
  206.  3d6h index  Ch (R/W): Start Address Top               (82c452/3, 655x0 Only)
  207.  bit 0-1  Display Start Address bit 16,17.
  208.  
  209.  3d6h index  Dh (R/W): Auxiliary Offset Register
  210.  bit   0  Bit 8 of Offset field. If set each line is >255 words.
  211.        1  Bit 8 of simulated Offset field.
  212.  
  213.  3d6h index  Eh (R/W): Text Mode                         (82c452, 655x0 Only)
  214.  bit   0  (82c452) Extended text Mode Control ??
  215.        1  (82c452) Enable anti-aliased fonts if set
  216.        2  (655x0)  If set cursor is non-blinking.
  217.        3  (655x0)  If set Cursor style is Exclusive-Or.
  218.  
  219.  3d6h index  Fh (R/W): Software Flags 2                          (655x0 only)
  220.  bit 0-7  Software flags. 
  221.  
  222.  3d6h index 10h (R/W): Single/Low Map                  (82c452/3, 655x0 Only)
  223.  bit 0-5  (82c452) Bank no in 4K/16K chunks.
  224.      0-7  (82c453) Bank no in 1K/4K chunks.
  225.  Note: This Bank register is used if in single-paging mode
  226.        or if addressing the lower half (32 or 64Kb) of the
  227.        adapters address range.
  228.  
  229.  3d6h index 11h (R/W): High Map                        (82c452/3, 655x0 Only)
  230.  bit 0-5  (82c452) Bank no in 4K/16K chunks.
  231.      0-7  (82c453) Bank no in 1K/4K chunks.
  232.  Note: This Bank register is used if addressing the upper
  233.        half (32 or 64Kb) of the adapters address range.
  234.  
  235.  3d6h index 14h (R/W): Emulation Mode Register
  236.  bit 0-1  Emulation Mode:
  237.        0=VGA/EGA, 1=CGA, 2=MDA and 3=Hercules.
  238.        2  (R) Hercules Configuration (3BFh) bit 0 Readback.
  239.       If set it is possible to set the Graphics Mode bit (3B8h bit 1).
  240.        3  (R) Hercules Configuration (3BFh) bit 1 Readback.
  241.       If set it is possible to set the Graphics Page bit (3B8h bit 7).
  242.        4  Display Enable Status Mode.
  243.       If set bit 0 of the Input Status Register 1 (3dAh)
  244.       shows the Hsync Status (as MDA/Hercules), if clear the
  245.       Display Enable is shown (as CGA/VGA). 
  246.        5  Vertical Retrace Status Mode.
  247.       If set bit 3 of the Input Status Register 1 (3dAh)
  248.       shows the Video signal (as MDA/Hercules), if clear the
  249.       Vertical Retrace status is shown (as CGA/VGA). 
  250.        6  Vsync Status Mode.
  251.       If clear bit 7 of the Input Status Register 1 (3dAh)
  252.       shows the Vsync Status (as MDA/Hercules).
  253.        7  Interrupt Output Function.
  254.       If clear the IRQ pin will always 3-state, if set it
  255.       will 3-state only when interrupts are disabled.  
  256.  
  257.  3d6h index 15h (R/W): Write Protect Register.
  258.  bit   0  Write Protect Group 1 Registers.
  259.       If set the Sequencer (3C4h), Graphics Controller (3CEh)
  260.       and Attribute Controller (3C0h) registers are write protected.
  261.        1  Write Protect Group 2 Registers.
  262.       If set the Cursor Size Register (3d4h index 9 bits 0-4) 
  263.       and the Character Height registers (3d4h index 0Ah and 0Bh)
  264.       are write protected.
  265.        2  Write Protect Group 3 Registers.
  266.       If set CRT registers (3d4h) index: 7 bit 4, 8, 11h bits 4-5,
  267.       13h, 14h, 17h bits 0-1 and 3-7, 18h are write protected.
  268.        3  Write Protect Group 4 Registers.
  269.       If set CRT registers (3d4h) index: 9 bits 5-7, 10h, 11h bits 0-3
  270.       and 6-7, 12h, 15h, 16h, 17h bit 2 are write protected.
  271.        4  Write Protect Group 5 Register.
  272.       If set the Miscellaneous Output (3C2h) and Feature Control
  273.       (3dAh) registers are write protected.
  274.        5  Write Protect Group 6 Registers.
  275.       If set the DAC registers (3C6h-3C9h) are write protected.
  276.        6  Write Protect Group 0 Registers.
  277.       If set CRT registers (3d4h) index: 0, 1, 2, 3, 4, 5, 6,
  278.       7 bits 0-3 and 5-7 are write protected.
  279.  
  280.  3d6h index 16h (R/W): Trap Enable Register.                      (not 655x0)
  281.  bit   0  If set accesses to registers 3B4h or 3B5h cause a Trap.
  282.        1  If set accesses to registers 3B8h or 3BFh cause a Trap.
  283.        2  If set accesses to registers 3C0h-3CFh cause a Trap.
  284.        3  If set accesses to registers 3D4h or 3D5h cause a Trap.
  285.        4  If set accesses to registers 3D8h or 3D9h cause a Trap.
  286.        5  If set accesses to registers 3d4h index 0-0Bh and 10h-18h
  287.       cause a Trap.
  288.  
  289.  3d6h index 17h (R/W): Trap Status Register.                      (not 655x0)
  290.  bit   0  If set a trap occurred due to access to registers 3B4h or 3B5h.
  291.        1  If set a trap occurred due to access to registers 3B8h or 3BFh.
  292.        2  If set a trap occurred due to access to registers 3C0h-3CFh.
  293.        3  If set a trap occurred due to access to registers 3D4h or 3D5h.
  294.        4  If set a trap occurred due to access to registers 3D8h or 3D9h.
  295.        5  If set a trap occurred due to access to registers 
  296.       3d4h index 0-0Bh or 10h-18h.
  297.  Note: Any bits in this register can be cleared by writing a 1 bit to them. 
  298.  
  299.  3d6h index 18h (R/W): Alternate Horizontal Display Enable End Register
  300.  bit 0-7  This register replaces the Horizontal Display Enable End Register
  301.       (3d4h index 1) in low resolution CGA text and graphics modes,
  302.       Hercules Graphics and all flat panel modes.
  303.  Note: Probably doesn't exist in the 82c451/2/3.
  304.  
  305.  3d6h index 19h (R/W): Alternate Horizontal Sync Start Register
  306.  bit 0-7  This register replaces the Horizontal Sync Start Register
  307.       (3d4h index 4) in low resolution CGA text and graphics modes,
  308.       Hercules Graphics and all flat panel modes.
  309.  Note: Probably doesn't exist in the 82c451/2/3.
  310.  
  311.  3d6h index 1Ah (R/W): Alternate Horizontal Sync End Register
  312.  bit 0-4  Alternate Horizontal Sync End. Replaces 3d4h index 5 bits 0-4.
  313.      5-7  Alternate Horizontal Sync Delay. 
  314.       For CRTs replaces 3d4h index 5 bits 5-6.
  315.  Note: This register replaces the Horizontal Sync End Register (3d4h index 5)
  316.        in low resolution CGA text and graphics modes, Hercules Graphics and
  317.        all flat panel modes.
  318.  Note: Probably doesn't exist in the 82c451/2/3.
  319.  
  320.  3d6h index 1Bh (R/W): Alternate Horizontal Total Register
  321.  bit 0-7  This register replaces the Horizontal Total Register
  322.       (3d4h index 0) in low resolution CGA text and graphics modes,
  323.       Hercules Graphics and all flat panel modes.
  324.  Note: Probably doesn't exist in the 82c451/2/3.
  325.  
  326.  3d6h index 1Ch (R/W): Alternate Horizontal Blank Start Register        (CRT)
  327.  bit 0-7  Alternate Horizontal Blank Start.
  328.  Note: For CRT systems this register replaces the Horizontal Blank Start
  329.        Register (3d4h index 2) in low resolution CGA text and graphics
  330.        modes and Hercules Graphics mode.
  331.  Note: Probably doesn't exist in the 82c451/2/3.
  332.  Note: This register has different meaning for CRT and Plat Panel systems.
  333.  
  334.  3d6h index 1Ch (R/W): Alternate Horizontal Blank End Register   (Flat Panel)
  335.  bit 0-7  For Flat Panel systems this value specifies the end of Horizontal
  336.       Blank in terms of character clocks.
  337.  Note: Probably doesn't exist in the 82c451/2/3.
  338.  Note: This register has different meaning for CRT and Plat Panel systems.
  339.  
  340.  3d6h index 1Dh (R/W): Alternate Horizontal Blank End Register          (CRT)
  341.  bit 0-4  Alternate Horizontal Blank End
  342.      5-6  Alternate Display Enable Skew Control. 
  343.  Note: For CRT systems this register replaces the Horizontal Blank End
  344.        Register (3d4h index 3) in low resolution CGA text and graphics
  345.        modes, and Hercules Graphics mode.
  346.  Note: Probably doesn't exist in the 82c451/2/3.
  347.  Note: This register has different meaning for CRT and Plat Panel systems.
  348.  
  349.  3d6h index 1Dh (R/W): Alternate Horizontal Blank Start Register (Flat Panel)
  350.  bit 0-7  Alternate Horizontal Blank Start.
  351.  Note: For Flat Panel systems this register replaces the Horizontal Blank
  352.        Start Register (3d4h index 2).
  353.  Note: Probably doesn't exist in the 82c451/2/3.
  354.  Note: This register has different meaning for CRT and Plat Panel systems.
  355.  
  356.  3d6h index 1Eh (R/W): Alternate Offset Register
  357.  bit 0-7  Alternate Offset.
  358.  Note: This register replaces the Offset Register (3d4h index 13h) in low
  359.        resolution CGA text and graphics modes and Hercules Graphics mode.
  360.  Note: Probably doesn't exist in the 82c451/2/3.
  361.  
  362.  3d6h index 1Fh (R/W): Virtual EGA Switch Register               (655x0 only)
  363.  bit 0-3  If bit 7 is 1 one of these bits is read back in the Input Status
  364.       Register 0 (3C2h bit 4) depending on Miscellaneous Output bits 2-3:
  365.        0: bit 3, 1: bit 2, 2: bit 1, 3:bit 0.
  366.        7  If set one of bits 0-3 is read back in the Input Status Register
  367.       (3C2h) bit 4.
  368.  
  369.  3d6h index 20h (R/W): Sliding Unit Delay                        (452/3 only)
  370.  
  371.  3d6h index 21h (R/W): Sliding Hold A                              (452 only)
  372.  
  373.  3d6h index 22h (R/W): Sliding Hold B                              (452 only)
  374.  
  375.  3d6h index 23h (R/W): Write Mask Control                        (452/3 Only)
  376.  bit   0  Enable VRAM Write Mask function if set
  377.      1-2  Write Bit Mask Select:
  378.        0: Write Bit Mask Pattern Register (3d6h index 24h)
  379.        1: Graphics Controller Bit Mask    (3CEh index 8)
  380.        2: Rotated CPU byte
  381.        3  Enable Fast Read/Modify/Write function if set
  382.  
  383.  3d6h index 24h (R/W): Write Bit Mask Pattern                 (82c452/3 only)
  384.  bit 0-7  Write Bit Mask (if 3d6h index 23h bit 1-2 =0)
  385.  
  386.  3d6h index 24h (R/W): Alternate Maximum Scanline Register       (655x0 only)
  387.  bit 0-4  Number of scanlines -1 per character row of TallFont.
  388.  Note: Used in Flat Panel text modes when TallFont is enabled.
  389.  
  390.  3d6h index 25h (R/W): FP AltGrHVirtPanel Size              (453, 655x0 only)
  391.  bit 0-7  Should be: (9/8)*(3d6h index 1Ch +1) -1.
  392.  
  393.  3d6h index 26h (R/W): Configuration                            (82c453 Only)
  394.  bit   0  PC/AT if set, PS/2 else
  395.      1-2  VRAM memory
  396.        0: 512k   16 chips of  64k x4
  397.        1: 512k    4 chips of 256k x4
  398.        2:   1M    8 chips of 256k x4
  399.        3: 512k    8 chips of  64k x4  ?????
  400.                   maybe 256k ??
  401.  
  402.  3d6h index 27h (R/W): Force Sync State
  403.  
  404.  3d6h index 28h (R/W): Video Interface
  405.  bit   0  BLANK/Display Enable Polarity.
  406.       Positive if set, Negative if clear.
  407.        1  Blank /Display Enable Select (CRT).
  408.       If set the BLANK/ pin outputs DE, if clear BLANK/
  409.        2  Shut Off Video.
  410.       If set the video signal is forced to default video
  411.       (3d6h index 2bh) during the blanking interval. 
  412.        3  Shut Off Blank.
  413.       If set the BLANK/ output is forced active
  414.       during the blanking interval.
  415.       (655x0)  Read/writable, but has no function.
  416.        4  (655x0)  256 Color Video Path. 
  417.       If set Video Data Path is 8 bits rather than 4 bits.
  418.        5  (655x0)  Interlace Video. CRT graphics modes only.
  419.       If set Video is interlaced.
  420.        6  (655x0)  8-bit Video Pixel Panning.
  421.       If set 3C0h index 13h bits 0-2 are used to control
  422.       pixel panning rather than bits 1-2.
  423.        7  (655x0)  Read/writable, but has no function.
  424.       
  425.  3d6h index 29h (R/W): External Sync Control                       (452 only)
  426.  
  427.  3d6h index 2Ah (R/W): Frame Interrupt Count                       (452 Only)
  428.  bit 0-4  Generate Vertical Interrupt every (n+1) frames
  429.  
  430.  3d6h index 2Bh (R/W): Default Video Register                       (not 453)
  431.  bit 0-7  On CRTs this is the color displayed during blank time.
  432.  
  433.  3d6h index 2Ch (R/W): FP Vsync (FLM) Delay Register.
  434.  bit 0-7  Number of Hsync pulses between internal Vsync and the
  435.       rising edge of First Line Marker (FLM).
  436.  Note: Only used in Flat Panel modes when 3d6h index 2Fh bit 7 is 0..
  437.  
  438.  3d6h index 2Dh (R/W): FP Hsync (LP) Delay Register.
  439.  bit 0-7  Number of character clocks between the FP Blank inactive
  440.       edge and the rising edge of the LP.
  441.  Note: Only used in Flat Panel modes when 3d6h index 2Fh bit 6 is 0 and
  442.        graphics mode horizontal compression is disabled.
  443.  
  444.  3d6h index 2Eh (R/W): FP Hsync (LP) Delay Register.
  445.  bit 0-7  Number of character clocks between the FP Blank inactive
  446.       edge and the rising edge of the LP.
  447.  Note: Only used in Flat Panel modes when 3d6h index 2Fh bit 6 is 0
  448.        and 9 dot text mode is used.
  449.  
  450.  3d6h index 2Fh (R/W): FP Hsync (LP) Width Register
  451.  bit 0-3  Width of the LP output pulse in number of character clocks.
  452.       Only in 8 dot text modes on Flat Panels.
  453.        4  Bit 8 of the FP Hsync (LP) Delay Register (3d6h index 2Eh).
  454.        5  Bit 8 of the FP Hsync (LP) Delay Register (3d6h index 2Dh).
  455.        6  FP Hsync (LP) Delay Disable.
  456.       If set the FP Hsync (LP) active edge will coincide with the
  457.       FP Blank inactive edge.
  458.        7  FP Vsync (FLM) Delay Disable.
  459.       If set the external FP Vsync (FLM) will coincide with 
  460.       the internal FP Vsync (FLM) active edge.
  461.  
  462.  3d6h index 30h (R/W): Graphics Cursor Start Address High
  463.  bit 0-7  Bit 8-15 of the Cursor Start Address.
  464.  
  465.  3d6h index 31h (R/W): Graphics Cursor Start Address Low
  466.  bit 0-7  Lowest 8 bits of the Cursor Start address.
  467.       3d6h index 30h and index Ah forms the upper 10 bits.
  468.       In 256 color modes this address has a granularity
  469.       of 16 bytes and 4 bytes in 16 color modes.
  470.  
  471.  3d6h index 32h (R/W): Graphics Cursor End Address
  472.  bit 0-7  End address of the cursor bit map.
  473.  
  474.  3d6h index 33h (R/W): Graphics Cursor X Position High
  475.  bit 0-3  Bits 8-11 of the X coordinate of the cursor.
  476.  
  477.  3d6h index 34h (R/W): Graphics Cursor X Position Low
  478.  bit 0-7  Lower 8 bits of the X coordinate of the cursor.
  479.  
  480.  3d6h index 35h (R/W): Graphics Cursor Y Position High
  481.  bit 0-3  Bits 8-11 of the Y coordinate of the cursor.
  482.  
  483.  3d6h index 36h (R/W): Graphics Cursor Y Position Low
  484.  bit 0-7  Lower 8 bits of the cursor Y coordinate.
  485.  
  486.  3d6h index 37h (R/W): Graphics Cursor Mode
  487.  bit   0  Cursor Enabled if set
  488.        1  Cursor Status enable
  489.        2  Horizontal Zoom. Zoom to 64 pixels wide if set.
  490.       (Normally 32 pixels wide).
  491.        3  Cursor Blink enabled if set
  492.        4  Cursor Blink Rate. 8 frames if clear, 16 if set
  493.  
  494.  3d6h index 38h (R/W): Graphics Cursor Plane Mask
  495.  bit   0  Enables graphics cursor in bit plane 0 if set
  496.        1  Enables graphics cursor in bit plane 1 if set
  497.        2  Enables graphics cursor in bit plane 2 if set
  498.        3  Enables graphics cursor in bit plane 3 if set
  499.  
  500.  3d6h index 39h (R/W): Graphics Cursor Color 0
  501.  bit 0-7  Background color of Graphics Cursor.
  502.  
  503.  3d6h index 3Ah (R/W): Graphics Cursor Color 1
  504.  bit 0-7  Foreground color of Graphics Cursor.
  505.  
  506.  3d6h index 44h (R/W): Scratch #0 Register           (82c453, 655x0 Only)
  507.  bit 0-7  Available
  508.  
  509.  3d6h index 45h (R/W): Scratch #1/Foreground Color   (82c453 Only)
  510.  bit 0-7  Used as foreground color if in Fast Font Paint mode,
  511.       Available as scratch else.
  512.  
  513.  3d6h index 50h (R/W): Panel Format                  (82c455/6/7 Only)
  514.  bit 0-1  Frame Rate Control
  515.        0: No gray scale simulated for mono,
  516.           8 colors simulated for color panels.
  517.        1: 4 simulated colors for color panels only
  518.           (64 colors displayed).
  519.        2: (82c455/6) 64 gray levels simulated for mono. panels only.
  520.           (82c457)   16 levels simulated for each color output.
  521.              4096 colors simulated.
  522.        3: (82c457)   3 levels simulated for each color output.
  523.              27 colors simulated.
  524.      2-3  Pulse Width Modulation
  525.        0: No gray scales for mono or color systems.
  526.        1: 4 colors supported by the color panels only
  527.           (64 colors displayed).
  528.        2: 16 gray levels supported by the mono panels only.
  529.        3: 256 gray levels supported by the
  530.           color single panels only.
  531.          (655x0) Dither Enable.
  532.            0: Disable Dither.
  533.            1: Enable dither for 256 color modes.
  534.            2: Enable dither for all modes. 
  535.      4-5  Clock Divide (CD).
  536.        0: Shift Clock = Dot Clock
  537.        1: Shift Clock = Dot Clock/2
  538.        2: Shift Clock = Dot Clock/4
  539.        3: (655x0) Shift Clock = Dot Clock/8.
  540.        7  Shift Clock Mask.
  541.       If set the Shift Clock stops outside the
  542.       Display Enable interval.
  543.      6-7  (655x0)  VAM/FRC Control
  544.         0: bit 2-3 determine the dither:
  545.         0: 6 bpp VAM (dither bits 0-1).
  546.         1: 4 bpp VAM (dither bits 0-1).
  547.         2: 2 bpp VAM (dither bits 2-3).
  548.         3: 1 bpp VAM (dither bits 4-5).
  549.         1: 3 Bits/Pixel VAM (dither bits 1-2).
  550.            Use with bit 2-3=0 or 1 for mono panels,
  551.            Use with bit 2-3=0 for color panels.
  552.         2: (65530) 2-Frame FRC
  553.            3 level gray scale simulation without dither or
  554.            9 level gray scale simulation with dither.
  555.         3: (65530) 3 Bits/Pixel VAM + 2-Frame FRC.
  556.            15-level gray scale simulation without dithering and
  557.            56 level gray scale simulation with dithering.
  558.  
  559.  
  560.  3d6h index 51h (R/W): Panel Type                    (82c455/6/7, 655x0 Only)
  561.  bit   0  (82c455/6) Double drive if set, single else
  562.        1  Double panel if set, single else
  563.      2-3  Type of display
  564.        0=LCD, 1=CRT, 2=Plasma or Electrolum.
  565.        2  (655x0) Display Type. 0=CRT, 1=Flat Panel.
  566.        3  (655x0) 8/16 bit FP Video Interface.
  567.       If set the Flat Panel Video interface is 16 bit.
  568.      4-5   0=Color panel 3 bit data pack
  569.        1=Color Panel 1 bit data pack
  570.        2=(82c455/6) Monochrome Panel
  571.        3=(82c457)   Extended 4-bit pack
  572.        4  (655x0) Video Skew. 
  573.       If set Video data is delayed 1 shift clock cycle.
  574.        5  (655x0) Shift Clock Mask (SM). Flat Panel mode only.
  575.       If set the shift clock is forced low outside the display
  576.       interval. If clear it also toggles outside the interval.
  577.        6  Flat Panel Compatibility enabled if set
  578.        7  Text Video output polarity
  579.  
  580.  3d6h index 52h (R/W): Panel Size                           (82c455/6/7 Only)
  581.  bit 0-1  Horizontal Size of panel
  582.        1=640 pixels, 2=720 pixels
  583.      3-6  Vertical Size of panel
  584.        1=200 lines, 2=350, 4=400, 8=480 lines
  585.  
  586.  3d6h index 52h (R/W): Power Down Control Register.              (655x0 only)
  587.  bit 0-2  FP Normal Refresh Count. Flat Panel modes only.
  588.       Number of memory refresh cycles to perform per scanline.
  589.        3  Panel Off Mode. If set the CRT/FP interface is inactive.
  590.        4  Panel Off Control Bit 0. Only effective if bit 3 is set.
  591.       If set the Video data, CRT and Flat Panel timing signals
  592.       are forced inactive, rather than only the Video data.
  593.        5  Panel Off Control bit 1. Only effective if bit 3 is set.
  594.       If set inactive video data and/or timing pins are tri-stated
  595.       rather than being driven.
  596.        6  Standby Control. Only effective if the STNDBY/ is low.
  597.       In standby mode the video output, timings and CPU interface
  598.       are inactive. If set set the Display memory refresh is derived
  599.       from the 32kHz input. If clear the DRAMs are self-refreshed.
  600.        7  CRT Mode Panel Off. Only effective in CRT modes.
  601.       If set Video data and timing signals are tri-stated. 
  602.  
  603.  3d6h index 53h (R/W): Override Register             (82c455/6/7, 655x0 Only) 
  604.  bit   0  Disable AR10D2. If set the ninth pixel of characters is
  605.       controlled by this register, if clear it is controlled 
  606.       by the Mode Control Register (3C0h index 10h) bit 2.
  607.        1  Alternate Line Graphics Character Code.
  608.       Only effective if bit 0 is set.
  609.       If set the ninth pixel of a character is forced to the same value
  610.       as the 8th pixel. If clear it is forced to the background color.
  611.        2  (655x0) FRC option 1.
  612.        3  (655x0) FRC option 2.
  613.      4-5  (65530) Pixel Packing. Only effective for Color STN panels.
  614.          0: 3-bit Pack. 3d6h index 50h bits 4-5 can be 0,1 or 2.
  615.          1: 4-bit Pack. 3d6h index 50h bits 4-5 can be 1 or 1.
  616.          3: Extended 4-bit Pack. 3d6h index 50h bits 4-5 must be 1.
  617.        7  (65530) High Color Mode Flat Panel Operation.
  618.       If set Hi-Color operation is enabled in hi-res modes on
  619.       Flat panel. If clear it is enabled in low-res modes.
  620.  
  621.  
  622.  3d6h index 54h (R/W): Alternate Miscellaneous Output Register    (82c455/6/7 Only)
  623.  bit   0  Panel Video Skew
  624.      2-3  Clock Select Bits
  625.        6  Hsync. Negative if set, Positive if clear.  
  626.        7  Vsync. Negative if set, Positive if clear.  
  627.  Note: For Flat Panel systems this register replaces the Miscellaneous
  628.          Output Register (3C2h).
  629.  
  630.  3d6h index 54h (R/W): FP Interface Register                    (655x0 Only)   
  631.  bit   0  FP Blank Polarity.
  632.       If set the BLANK/ pin has negative polarity.
  633.        1  If set the BLANK/ pin outputs only the FP Horizontal Blank
  634.       signal, if clear it outputs both Vertical and Horizontal
  635.       Blank signals.
  636.      2-3  FP Clock Select Bits 0-1.
  637.       In Flat Panel modes these bits replace 3C2h bits 2-3.
  638.      4-5  FP Feature Control bits 0-1.
  639.       In Flat Panel modes these bits replace 3dAh bits 0-1.
  640.        6  FP HSync (LP) Polarity.
  641.       If set the HSync (LP) pin has negative polarity.
  642.        7  FP VSync (FLM) Polarity.
  643.       If set the Vsync (FLM) pin has negative polarity. 
  644.  Note: This register is only effective in Flat Panel modes.
  645.  
  646.  3d6h index 55h (R/W): Text Mode 350_A                      (82c455/6/7 Only)
  647.  bit 0-3  (Number of blank lines)-1 inserted between text rows
  648.       I.e.  if 5, insert 6 blank lines after a text line.
  649.        4  If clear lines are inserted.
  650.  Note: This register is used if in a 350 line text mode
  651.        and fonts are larger than 8 lines.
  652.  
  653.  3d6h index 55h (R/W): Horizontal Compensation Register          (655x0 Only)
  654.  bit   0  Enable Horizontal Compensation (EHCP)
  655.       If set Horizontal compensation is enabled.
  656.        1  Enable Automatic Horizontal Centring (EAHC)
  657.       If set (and bit 0 is set) EAHC is enabled.
  658.       Horizontal left and right borders will be computed
  659.       automatically.
  660.        2  Enable Text Mode Horizontal Compression (ETHC).
  661.       If set, bit 0 is set and we are in a Flat Panel Text
  662.       mode ETHC is enabled.
  663.       9-dot text modes will be forced to 8-bit.
  664.        5  Enable Automatic Horizontal Doubling (EAHD).
  665.       If set and bit 0 is set, EAHD is enabled.
  666.       If Horizontal Display Width (3d4h index 1) is less
  667.       than or equal to half the Horizontal Panel Size
  668.       (3d6h index 18h) horizontal pixel doubling will be forced.
  669.        6  Alternate CRT Hsync Polarity.
  670.       Negative if set, Positive if clear.
  671.        7  Alternate CRT Vsync Polarity.
  672.       Negative if set, Positive if clear. 
  673.  
  674.  3d6h index 56h (R/W): Text Mode 350_B                      (82c455/6/7 Only)
  675.  bit 0-3  (Number of blank lines)-1 inserted between text rows
  676.        4  If clear lines are inserted.
  677.  Note: This register is used if in a 350 line text mode
  678.        and fonts are smaller than or equal to 8 lines.
  679.  
  680.  3d6h index 56h (R/W): Horizontal Centring Register             (655x0 Only)
  681.  bit 0-7  Horizontal Left Border.
  682.       Size of the left border in pixels  -1.
  683.       Only used if in a Flat Panel mode and non-automatic
  684.       horizontal centring is enabled.
  685.  
  686.  3d6h index 57h (R/W): Text Mode 400                        (82c455/6/7 Only)
  687.  bit 0-3  (Number of blank lines)-1 inserted between text rows
  688.        4  If clear lines are inserted.
  689.  Note: This register is used if in a 400 line text mode.
  690.  
  691.  3d6h index 57h (R/W): Vertical Compensation Register            (655x0 Only)
  692.  bit   0  Enable Vertical Compensation if set.
  693.        1  Enable Automatic Vertical Centring.
  694.       If set and bit 0 set, the image will automatically
  695.       be centred vertically.
  696.        2  Enable Text Mode Vertical Stretching.
  697.       If set and bit 0 set, text mode vertical
  698.       stretching is enabled. 
  699.      3-4  Text Mode Vertical Stretching. If bit 0 & 2 set.
  700.         0 = Double Scanning (DS) and Line Insertion (LI)
  701.         with priority: DS+li, DS, LI.
  702.         1 = Double Scanning (DS) and Line Insertion (LI)
  703.         with priority: DS+LI, LI, DS.
  704.         2 = Double Scanning (DS) and TallFont (TF)
  705.         with priority: DS+TF, DS, TF.
  706.         3 = Double Scanning (DS) and TallFont (TF)
  707.         with priority: DS+TF, TF, DS.
  708.        5  Enable Vertical Stretching if set and bit 0 set.
  709.        6  Vertical Stretching.If bits 0 and 5 set.
  710.         0 = Double Scanning (DS) and Line Replication (LR)
  711.         with priority: DS+LR, DS, LR.
  712.         1 = Double Scanning (DS) and Line Replication (LR)
  713.         with priority: DS+LR, LR, DS.
  714.  
  715.  3d6h index 58h (R/W): Graphics Mode 350                    (82c455/6/7 Only)
  716.  bit 0-3  Number of scan lines between stretch/delete
  717.        4  Enable vertical Stretching if set
  718.        5  Enable vertical deletion if set
  719.        6  If set the value in bits 0-3 is incremented every other period.
  720.  Note: This register is used if in a 350 line graphics mode.
  721.  
  722.  3d6h index 58h (R/W): Vertical Centring Register               (655x0 Only)  
  723.  bit 0-7  Vertical Top Border LSBs.
  724.       Lower 8 bits of the Vertical Top Border.
  725.       Bits 8-9 are in 3d6h index 59h bits 5-6.
  726.  Note: used only in Flat panel modes when non-automatic
  727.        vertical centring is enabled.
  728.  
  729.  3d6h index 59h (R/W): Graphics Mode 400                    (82c455/6/7 Only)
  730.  bit 0-3  Number of scan lines between stretch/delete
  731.        4  Enable vertical Stretching if set
  732.        5  Enable vertical deletion if set
  733.        6  If set the value in bits 0-3 is incremented every other period.
  734.  Note: This register is used if in a 400 line graphics mode.
  735.  
  736.  3d6h index 59h (R/W): Vertical Line Insertion Register          (655x0 Only)
  737.  bit 0-3  Vertical line Insertion Height.
  738.       Number of lines -1 to insert between text rows.
  739.      5-6  Bits 8-9 of the Vertical Top Border (3d6h index 58h).
  740.  Note: This register is only used in Flat Panel text modes.
  741.        
  742.  3d6h index 5Ah (R/W): Flat Panel Vertical Display Start_400      (82c455/6/7 Only)
  743.  bit 0-7  For 400 line Flat Panel modes  these are the lower 8 bits of the 
  744.       Vertical Display Start (in scanlines). The upper 2 bits are in the
  745.       Flat Panel Vertical Overflow 2 Register (3d6h index 6Bh) bits 2-3.
  746.  
  747.  3d6h index 5Ah (R/W): Vertical Line Replication Register.       (655x0 Only)
  748.  bit 0-3  Vertical line Replication Height.
  749.       Number of lines-1 between replicated lines. 
  750.       Double scanned lines are also counted.
  751.  Note: This register is only used when in Flat Panel text modes
  752.        and Line Replication is enabled.
  753.  
  754.  3d6h index 5Bh (R/W): Flat Panel Vertical Display End_400  (82c455/6/7 Only)
  755.  bit 0-7  For 400 line Flat Panel modes these are the lower 8 bits of the 
  756.       Vertical Display End (in scanlines). The upper 2 bits are in the
  757.       Flat Panel Vertical Overflow 2 Register (3d6h index 6Bh) bits 6-7.
  758.  
  759.  3d6h index 5Bh (R/W): Panel Power Sequencing Delay register     (65530 Only)
  760.  bit 0-3  Panel Power Down sequencing Delay in 32ms counts. (0-480ms)
  761.      4-7  Panel Power Up Sequencing Delay in 4ms counts. (0-60ms)
  762.  Note: This register is used only when the Panel power Sequencing
  763.        feature is enabled. Default to 81h for compatibility with 65520.
  764.  
  765.  3d6h index 5Ch (R/W): Weight Clock Control Register A        (82c455/6 only)
  766.  bit 0-5  This register is used in Flat Panel mode when bit 7 of the Panel
  767.       Format Register (3d6h index 50h) is set and bits 2-3 of the same
  768.       register is either 1 or 2.
  769.       The time from Hsync to the first pulse on the WGTCLK is this
  770.       value*4 dot clocks.  See also 3d6h index 5Dh and 6Ch.
  771.  
  772.  3d6h index 5Dh (R/W): Weight Clock Control Register B        (82c455/6 only)
  773.  bit 0-5  This register is used in Flat Panel mode when bit 7 of the Panel
  774.       Format Register (3d6h index 50h) is set and bits 2-3 of the same
  775.       register is either 1 or 2.
  776.       The time between WGTCLK pulses is this value*4 dot clocks.
  777.       See also 3d6h index 5Ch and 6Ch.
  778.  
  779.  3d6h index 5Eh (R/W): ACDCLK Control Register       (82c455/6/7, 655x0 only)
  780.  bit 0-6  ACDCLK Count. Number of Hsync pulses between changes in ACDCLK.
  781.        7  If set the ACDCLK phase inverts every frame, if clear the ACDCLK
  782.       changes phase when the number of Hsynmc pulses specified in 
  783.       bits 0-6 have elapsed.
  784.    
  785.  3d6h index 5Fh (R/W): Power Down Mode Refresh Register    (82c455/6/7, 655x0 only)
  786.  bit 0-7  (82c455/6/7) Sleep Mode Refresh Frequency.
  787.       A refresh will happen for every (4*this value)+8 dot clocks.
  788.      0-1  (655x0) Power Down Refresh Frequency.
  789.       Refresh happens every xx micro seconds:  
  790.         0=16usek, 1=32 usek, 2=64 usek and 3=128 usek.
  791.  
  792.  3d6h index 60h (R/W): Blink Rate Control            (82c455/6/7, 655x0 Only)
  793.  bit 0-5  Blink Rate.
  794.       Character Blink Freq = Vertical sync Freq * (Blink rate+1)
  795.       Cursor blink freq = Character Blink Freq *2.
  796.      6-7  Blink Cycle  1=25%, 2=50%, 3=75%
  797.  
  798.  3d6h index 61h (R/W): Smartmap Control                (82c455/6, 655x0 Only)
  799.  bit   0  If set enables Smartmap and bypasses internal color lookup table.
  800.      1-4  Threshold for (Foreground - Background) diff
  801.       if diff less than the threshold the foreground and
  802.       background colors will be spread (See 3d6h index 62h).
  803.        5  Smartmap Saturation value.
  804.       If set the result is calculated modulo 16, 
  805.       if clear it is rounded to min. or max. values (0 and 0Fh).
  806.        6  (82c456, 655x0) Enhanced text if set
  807.       (reverses attributes 7h and Fh)
  808.        7  (655x0) Text Video Output Polarity (TVP) if set.
  809.       Only effective in Flat Panel modes. 
  810.  
  811.  3d6h index 62h (R/W): Smartmap Shift Parameter        (82c455/6, 655x0 Only)
  812.  bit 0-3  Number of levels to shift foreground color
  813.       when too little difference (See 3d6h index 61h bit 1-4).
  814.      4-7  Number of levels to shift background color.
  815.  
  816.  3d6h index 63h (R/W): Graphics Color Mapping Control         (82c455/6 Only)
  817.  bit 0-3  Threshold color value for mono output.
  818.       All colors >= this value will be set to 1,
  819.       all lower to 0.
  820.        4  Use upper 4 bits of 256 color if set, lower if not.
  821.        5  Enable internal color lookup table if set
  822.        6  Write protect internal color look up table if set
  823.        7  Graphics output polarity
  824.  
  825.  3d6h index 63h (R/W): Smartmap Color Mapping Control            (655x0 only)
  826.  bit 0-5  Color Threshold. Used for mapping 6 bit color to 1 bit.
  827.       Color values greater than or equal than this value
  828.       are mapped to 1, and lower values are mapped to 0.
  829.        6  Must be set to 1.
  830.        7  Graphics Video Output Polarity
  831.       Inverted polarity if set, normal if clear.
  832.       Graphics video output only.
  833.  
  834.  3d6h index 64h (R/W): Alternate Vertical Total      (82c455/6/7, 655x0 only) 
  835.  bit 0-7  Alternate Vertical Total
  836.  Note: For Flat Panel modes this register replaces the Vertical
  837.        Total Register (3d4h index 6).
  838.  
  839.  3d6h index 65h (R/W): Alternate Overflow            (82c455/6/7, 655x0 only) 
  840.  bit   0  Alternate Vertical Total bit 8
  841.        1  (455/6/7) Alternate Vertical Display End bit 8.
  842.       (655x0)   Alternate Vertical Panel Size bit 8.
  843.        2  Alternate Vertical Sync Start bit 8.
  844.        3  (655x0) Alternate Vertical Sync Start bit 10.
  845.        4  (655x0) Alternate Vertical Total bit 10.
  846.        5  Alternate Vertical Total bit 9
  847.        6  (455/6/7) Alternate Vertical Display End bit 9.
  848.       (655x0)   Alternate Vertical Panel Size bit 9.
  849.        7  Alternate Vertical Sync Start bit 9.
  850.  
  851.  3d6h index 66h (R/W): Alternate Vertical Sync Start (82c455/6/7, 655x0 only) 
  852.  bit 0-7  Alternate Vertical Sync Start
  853.  Note: For Flat Panel modes this register replaces the Vertical
  854.        Sync Start Register (3d4h index 10h).
  855.  
  856.  3d6h index 67h (R/W): Alternate Vertical Sync End   (82c455/6/7, 655x0 only) 
  857.  bit 0-3  Alternate Vertical Sync End
  858.  Note: For Flat Panel modes this register replaces the Vertical
  859.        Sync End Register (3d4h index 11h).
  860.  
  861.  3d6h index 68h (R/W): Alternate Vertical Display Enable    (82c455/6/7 only) 
  862.  bit 0-7  Alternate Vertical Display Enable
  863.  Note: For Flat Panel modes this register replaces the Vertical
  864.        Display Enable Register (3d4h index 12h)
  865.  
  866.  3d6h index 69h (R/W): Vertical Panel Size Register.             (655x0 only)
  867.  bit 0-7  Vertical Panel Size. 
  868.       Number of scan lines per frame.
  869.  
  870.  3d6h index 69h (R/W): Flat Panel Vertical Display Start_350      (82c455/6/7 only) 
  871.  bit 0-7  For 350 line Flat Panel modes these are the lower 8 bits of the 
  872.       Vertical Display Start (in scanlines). The upper 2 bits are in the
  873.       Flat Panel Vertical Overflow 2 Register (3d6h index 6Bh) bits 0-1.
  874.  
  875.  3d6h index 6Ah (R/W): Flat Panel Vertical Display End_350  (82c455/6/7 only) 
  876.  bit 0-7  For 350 line Flat Panel modes these are the lower 8 bits of the 
  877.       Vertical Display End (in scanlines). The upper 2 bits are in the
  878.       Flat Panel Vertical Overflow 2 Register (3d6h index 6Bh) bits 4-5.
  879.  
  880.  3d6h index 6Bh (R/W): Flat Panel Vertical Overflow 2       (82c455/6/7 only)
  881.  bit 0-1  Bits 8-9 of the Vertical Display Start_350 Register
  882.       (3d6h index 69h)
  883.      2-3  Bits 8-9 of the Vertical Display Start_400 Register (3d6h index 5Ah
  884.      4-5  Bits 8-9 of the Vertical Display End_350 Register (3d6h index 6Ah)
  885.      6-7  Bits 8-9 of the Vertical Display End_400 Register (3d6h index 5Bh)
  886.  
  887.  3d6h index 6Ch (R/W): Weight Clock Control Register        (82c455/6/7 only)
  888.  bit 0-5  Weight Clock Control Pulse Count.
  889.       Total number of pulses on the Weight Clock.
  890.       See Also 3d6h index 5Ch and 5Dh.
  891.  
  892.  3d6h index 6Ch (R/w): Programmable Output Drive Register        (655x0 only)
  893.  bit   0  Input Level Sense Selection Mode.
  894.       If set bit 1 is used to determine input threshold.
  895.       If clear chip detects VCC voltage internally.
  896.        1  Input Level Sense Selection Voltage.
  897.       If set VCC for internal logic is 3.3V
  898.       if clear it is 5V.
  899.        2  Flat Panel Interface Output Drive Select
  900.       If set Higher drive, if clear Lower drive.
  901.        3  Bus Interface Output Drive Select.
  902.       If set Higher drive, if clear Lower drive.
  903.        4  Memory Interface output Drive Select.
  904.       If set Higher drive, if clear Lower drive.
  905.         
  906.  3d6h index 6Dh (R/W): FRC and Palette Control                (82c456/7 Only)
  907.  bit   3  Enable Frame Rate Control
  908.      4-5  Maximum number of gray levels.
  909.         0: 64 level FRC
  910.         1: 16 level FRC with dither for 256 color modes.
  911.         2: 64 level FRC with dither for low gray levels.
  912.         3: 16 level FRC only.
  913.      6-7  Usage of External Palette:
  914.         0: Bypass
  915.         1: Bypass for 16 color modes, use for 256 color.
  916.         2: Always use
  917.         3: 16 grays for 16 color modes, 64 for 256 color.
  918.  
  919.  3d6h index 6Eh (R/W): Polynomial FRC Control          (82c456/7, 655x0 Only)
  920.  bit 0-3  Polynomial N value for Frame Rate Control
  921.      4-7  Polynomial M value.
  922.  
  923.  3d6h index 6Fh (R/W): Frame Buffer Control register             (655x0 only)
  924.  bit   0  Frame Buffer Enable.
  925.       External Frame Buffer enabled if set.
  926.        1  Frame Accelerator enabled if set.
  927.        2  Frame Buffer memory Type.
  928.       If set Frame Buffer consists of 256Kx4 VRAM.
  929.       If clear Frame Buffer consists of 64Kx4 VRAM
  930.      3-5  Frame Buffer Refresh Count.
  931.      6-7  Reserved. Must be set to 0. 
  932.  Note: This register effective in Flat Panel mode only.
  933.  
  934.  3d6h index 70h (R/W): Setup/Disable Control Register.           (655x0 only)
  935.  bit   7  3C3/46E8 Register Disabled if set.
  936.      
  937.  3d6h index 7Dh (R/W): FP Compensation Diagnostic Register       (655x0 only)
  938.  bit 0-7  Reserved. returns 0.
  939.  
  940.  3d6h index 7Eh (R/W): CGA Color Select          
  941.       This is a copy of the CGA Color Select Register at 3D9h.
  942.       The copy at 3D9h is only visible in CGA emulation mode.
  943.       This register is always visible.  
  944.  
  945.  3d6h index 7Fh (R/W): Diagnostic 
  946.  bit   0  if set 3-states pins: PALRD/, PALWR/, WR46E8/, HSYNC, VSYNC,
  947.       ACDCLK, BLANK/, P0-7, RDY, DATEN/ AND IRQ/.
  948.        1  If set 3-states pins: WE/, RAS/, CAS0/, CAS1/,
  949.       CAS2/, CAS3/, AA0-7 AND BA0-7.
  950.      2-5  Test Function Pins. Should be 0.
  951.        6  (655x0) Test Function Enabled if set.
  952.        7  (655x0) Special Test Function. Should be set to 0.
  953.   
  954.  46E8h (R/W): Setup Control PC/AT Register
  955.  bit 0-2  Reserved
  956.        3  Enables Adapter VGA if set
  957.        4  Enters Setup Mode if set
  958.      5-7  Reserved
  959. Note: This is the same register as 94h.
  960.  
  961.  
  962.   Most every index of 3d6h is used by one one or more chip.
  963.  
  964.   Bank Switching:
  965.  
  966.    Bank switching is dependent on Chip version:
  967.  
  968.                   16 color modes       256 color modes
  969.    Chip         #bank regs   #Banks Granularity   #banks Granularity
  970.    82c451/5/6      1                                  4    64Kbytes
  971.    82c452          2            64     4Kbytes       64    16Kbytes
  972.    82c453          2           256     1Kbytes      256     4Kbytes
  973.  
  974.     For the 82c452 & 3  the window to display memory can start on
  975.     any boundary fitting the granularity of the chip/display mode.
  976.     When using 2 bankregisters, the address range available to the
  977.     adapter is split equally between the two bank registers. I.e.
  978.     A000h-A7FFh uses one bank, and A800h-AFFFh the other.
  979.     (Or A000h-AFFFh and B000h-BFFFh respectively if using the full
  980.     128 Kbytes range).
  981.  
  982.  
  983.  
  984.   ID Chips and Technologies Chip Set:
  985.  
  986.  
  987.     vio($6F00);
  988.     if rp.al=$5F then
  989.       case rp.bl of
  990.     0:Chip&Tech 82c451 !!!
  991.     1:Chip&Tech 82c452 !!!   
  992.     2:Chip&Tech 82c455 !!!
  993.     3:Chip&Tech 82c453 !!!
  994.     5:Chip&Tech 82c456 !!!
  995.     6:Chip&Tech 82c457 !!!
  996.     7:Chip&Tech F65520 !!!
  997.     8:Chip&Tech F65530 !!!
  998.       end;
  999.  
  1000.  
  1001.  
  1002.   Video Modes:
  1003.  
  1004.    60h T  132   25  16  (8x16)
  1005.    61h T  132   50  16  (8x8)
  1006.    6Ah G  800  600  16  planar
  1007.    70h G  800  600  16  planar
  1008.    71h G  960  720  16  planar   Cardinal only!
  1009.    72h G 1024  768  16  planar
  1010.    78h G  640  400 256  packed   Not documented/not all boards
  1011.    79h G  640  480 256  packed
  1012.    7Ah G  720  540 256  packed   Not documented/not all boards
  1013.    7Bh G  800  600 256  packed
  1014.    7Ch G  800  600 256  packed   (82c453 Only)
  1015.    7Eh G 1024  768 256  packed   (82c453 Only)  
  1016.  
  1017.   Bios Extensions:
  1018. ----------105F00-----------------------------
  1019. INT 10 - Get Controller Information       (Chips and Technologies Super VGA)
  1020.     AX = 5F00h
  1021. Return: AL = 5F  If extended VGA control function supported
  1022.     BL = CHIP Type:
  1023.          Bits 4-7:
  1024.            0=82c451
  1025.            1=82c452
  1026.            2=82c455
  1027.            3=82c453
  1028.            5=82c456 
  1029.        Bits 0-3:  Revision Number
  1030.     BH = Video Memory Size
  1031.            0=256 Kbytes
  1032.            1=512 Kbytes
  1033.            2=1 Megabyte
  1034.     CX = Miscellaneous Information
  1035.          Bit 0  Dac Size. 0=6bit, 1=8bit
  1036.          1  System Environment. 0=PC/AT, 1=PS/2
  1037.          2  Extended text modes supported by BIOS
  1038.          3  Reserved
  1039.          4  Extended graphics modes supported by BIOS
  1040.          5  Reserved
  1041.          6  Graphics Cursor supported by BIOS
  1042.          7  Anti Alias font supported by BIOS
  1043.          8  Preprogrammed emulation supported by BIOS
  1044.          9  Auto emulation supported by BIOS
  1045.         10  Variable mode set at cold boot supported by BIOS
  1046.         11  Variable mode set at warm boot supported by BIOS
  1047.         12  Emulation mode set at cold boot supported by BIOS
  1048.         13  Emulation mode set at warm boot supported by BIOS
  1049.          14-15  Reserved
  1050. ----------105F01-----------------------------
  1051. INT 10 - Set Emulation Mode               (Chips and Technologies Super VGA)
  1052.     AX = 5F01h
  1053.     BL = Operation Mode
  1054.            0-1 Reserved
  1055.          2 Enable CGA Emulation
  1056.          3 Enable MDA Emulation
  1057.          4 Enable Hercules Emulation
  1058.          5 Enable EGA Emulation
  1059.          6 Enable VGA Emulation
  1060. Return: AL = 5Fh  If function supported
  1061.     AH = Return Status
  1062.            1 If Function Successful, 0 else
  1063. ----------105F02-----------------------------
  1064. INT 10 - Auto Emulation Control           (Chips and Technologies Super VGA)
  1065.     AX = 5F02h  Auto Emulation Control
  1066.     BL = Selection
  1067.            0= Enable Auto Emulation
  1068.            1= Disable Auto Emulation
  1069. Return: AL = 5Fh  If function supported
  1070.     AH = Return Status
  1071.            1 If Function Successful, 0 else
  1072. ----------105F03-----------------------------
  1073. INT 10 - Set Power-on Video Configuration (Chips and Technologies Super VGA)
  1074.     AX = 5F03h
  1075.     BL = Configuration
  1076.            0:  Set display mode as specified in the CX register
  1077.            at power-up.
  1078.  
  1079.            CL=Display Mode
  1080.            CH=Bits 0-1 Scanlines
  1081.                  0=200 Lines
  1082.                  1=350 Lines
  1083.                  2=400 Lines
  1084.               Bit    7 Performance
  1085.                  0= Reset after next boot
  1086.                  1= Set until changed
  1087.  
  1088.            1:  Set Emulation mode as specified in the CX register
  1089.            at power-up.
  1090.  
  1091.            CL=Emulation Mode (See 5F01h)
  1092.            CH=Bit 7 Performance
  1093.             0= Reset after next boot
  1094.             1= Set until changed
  1095.  
  1096. Return: AL = 5Fh  If function supported
  1097.     AH = Return Status
  1098.            1 If Function Successful, 0 else
  1099. ----------105F90-----------------------------
  1100. INT 10 - Return Save/Restore buffer size  (Chips and Technologies Super VGA)
  1101.     AX = 5F90h
  1102.     CX = Mask State
  1103.          Bit 0  Save/Restore video hardware
  1104.          1  Save/Restore BIOS data state
  1105.          2  Save/Restore DAC state
  1106.         15  Save/Restore type
  1107.               0= Save/Restore All state information
  1108.               1= Save/Restore super state information
  1109.  
  1110. Return: AL = 5Fh  If function supported
  1111.     BX = Number of 64byte blocks required
  1112. ----------105F91-----------------------------
  1113. INT 10 - Save State                       (Chips and Technologies Super VGA)
  1114.     AX = 5F91h
  1115.     CX = Mask State
  1116.          Bit 0  Save video hardware
  1117.          1  Save BIOS data state
  1118.          2  Save DAC state
  1119.         15  Save type
  1120.               0= Save All state information
  1121.               1= Save super state information
  1122.     ES:BX -> Buffer to save in.
  1123. Return: AL = 5Fh  If function supported
  1124. ----------105F92-----------------------------
  1125. INT 10 - Restore State                    (Chips and Technologies Super VGA)
  1126.     AX = 5F92h
  1127.     CX = Mask State
  1128.          Bit 0  Restore video hardware
  1129.          1  Restore BIOS data state
  1130.          2  Restore DAC state
  1131.         15  Restore type
  1132.               0= Restore All state information
  1133.               1= Restore super state information
  1134.     ES:BX -> Buffer to restore from.
  1135. Return: AL = 5Fh  If function supported
  1136.